package icu.qx.pro.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import icu.qx.pro.domain.pbs.PbsProcedure;
import icu.qx.pro.domain.pbs.PbsProcedureRoute;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 工单任务对象 pro_work_task
 *
 * @author yong
 * @date 2024-07-02
 */
public class ProWorkTask extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 工单任务code
     */
    private String wtaskCode;
    private Integer wtaskSort;

    /**
     * 质检人员
     */
    @Excel(name = "质检人员")
    private Long wtaskQcPeo;
    private String wtaskQcPeoName;

    /**
     * 工单code
     */
    @Excel(name = "工单code")
    private String wtaskWoCode;
    private String workOrderName;

    /**
     * 任务名称
     */
    @Excel(name = "任务名称")
    private String wtaskName;

    /**
     * 任务负责人
     */
    @Excel(name = "任务负责人")
    private Long wtaskManager;
    private String wtaskManagerName;

    /**
     * 生产班组code
     */
    @Excel(name = "生产班组code")
    private String wtaskGroup;
    private String wtaskGroupName;

    /**
     * 生产单元code
     */
    @Excel(name = "生产单元code")
    private String wtaskCell;
    private String workCellName;

    /**
     * 计划数量
     */
    @Excel(name = "计划数量")
    private BigDecimal wtaskNum;

    /**
     * 实际生产数量
     */
    @Excel(name = "实际生产数量")
    private BigDecimal wtaskRNum;

    /**
     * 计划开工时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    @Excel(name = "计划开工时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date wtaskStart;

    /**
     * 计划完工时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    @Excel(name = "计划完工时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date wtaskEnd;

    /**
     * 实际开工时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    @Excel(name = "实际开工时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date wtaskRStart;

    /**
     * 实际完工时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    @Excel(name = "实际完工时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date wtaskREnd;
    /**
     * bomCode
     */
    @Excel(name = "bomCode")
    private String wtaskBom;

    /**
     * bomVersion
     */
    @Excel(name = "bomVersion")
    private String wtaskBomVersion;

    /**
     * 工序code
     */
    @Excel(name = "工序code")
    private String wtaskProcedureCode;
    private String procedureName;

    /**
     * 工艺路线code
     */
    @Excel(name = "工艺路线code")
    private String wtaskRouteCode;
    private String prouteName;

    /**
     * 工单任务状态 0未派工 1已下达 2进行中 3已完成 4已关闭 5已暂停
     */
    @Excel(name = "工单任务状态 0未派工 1已下达 2进行中 3已完成 4已关闭 5已暂停")
    private String wtaskStatus;

    /**
     * 关闭原因
     */
    @Excel(name = "关闭原因")
    private String wtaskPCloseReason;

    /**
     * 备注
     */
    @Excel(name = "备注")
    private String wtaskPDesc;

    private String wtaskCalcType;
    private BigDecimal wtaskCalcSingle;

    public BigDecimal getWtaskCalcSingle() {
        return wtaskCalcSingle;
    }

    public void setWtaskCalcSingle(BigDecimal wtaskCalcSingle) {
        this.wtaskCalcSingle = wtaskCalcSingle;
    }

    public String getWtaskCalcType() {
        return wtaskCalcType;
    }

    public void setWtaskCalcType(String wtaskCalcType) {
        this.wtaskCalcType = wtaskCalcType;
    }

    public Integer getWtaskSort() {
        return wtaskSort;
    }

    public void setWtaskSort(Integer wtaskSort) {
        this.wtaskSort = wtaskSort;
    }

    public Long getWtaskManager() {
        return wtaskManager;
    }

    public void setWtaskManager(Long wtaskManager) {
        this.wtaskManager = wtaskManager;
    }

    public String getWtaskManagerName() {
        return wtaskManagerName;
    }

    public void setWtaskManagerName(String wtaskManagerName) {
        this.wtaskManagerName = wtaskManagerName;
    }

    public String getWtaskQcPeoName() {
        return wtaskQcPeoName;
    }

    public void setWtaskQcPeoName(String wtaskQcPeoName) {
        this.wtaskQcPeoName = wtaskQcPeoName;
    }

    public String getWtaskGroupName() {
        return wtaskGroupName;
    }

    public void setWtaskGroupName(String wtaskGroupName) {
        this.wtaskGroupName = wtaskGroupName;
    }

    public String getWtaskBom() {
        return wtaskBom;
    }

    public void setWtaskBom(String wtaskBom) {
        this.wtaskBom = wtaskBom;
    }

    public String getWtaskBomVersion() {
        return wtaskBomVersion;
    }

    public void setWtaskBomVersion(String wtaskBomVersion) {
        this.wtaskBomVersion = wtaskBomVersion;
    }

    public void setWtaskCode(String wtaskCode) {
        this.wtaskCode = wtaskCode;
    }

    public String getWtaskCode() {
        return wtaskCode;
    }

    public void setWtaskQcPeo(Long wtaskQcPeo) {
        this.wtaskQcPeo = wtaskQcPeo;
    }

    public Long getWtaskQcPeo() {
        return wtaskQcPeo;
    }

    public void setWtaskWoCode(String wtaskWoCode) {
        this.wtaskWoCode = wtaskWoCode;
    }

    public String getWtaskWoCode() {
        return wtaskWoCode;
    }

    public void setWtaskName(String wtaskName) {
        this.wtaskName = wtaskName;
    }

    public String getWtaskName() {
        return wtaskName;
    }

    public void setWtaskGroup(String wtaskGroup) {
        this.wtaskGroup = wtaskGroup;
    }

    public String getWtaskGroup() {
        return wtaskGroup;
    }

    public void setWtaskCell(String wtaskCell) {
        this.wtaskCell = wtaskCell;
    }

    public String getWtaskCell() {
        return wtaskCell;
    }

    public void setWtaskNum(BigDecimal wtaskNum) {
        this.wtaskNum = wtaskNum;
    }

    public BigDecimal getWtaskNum() {
        return wtaskNum;
    }

    public void setWtaskStart(Date wtaskStart) {
        this.wtaskStart = wtaskStart;
    }

    public Date getWtaskStart() {
        return wtaskStart;
    }

    public void setWtaskEnd(Date wtaskEnd) {
        this.wtaskEnd = wtaskEnd;
    }

    public Date getWtaskEnd() {
        return wtaskEnd;
    }

    public void setWtaskProcedureCode(String wtaskProcedureCode) {
        this.wtaskProcedureCode = wtaskProcedureCode;
    }

    public String getWtaskProcedureCode() {
        return wtaskProcedureCode;
    }

    public void setWtaskRouteCode(String wtaskRouteCode) {
        this.wtaskRouteCode = wtaskRouteCode;
    }

    public String getWtaskRouteCode() {
        return wtaskRouteCode;
    }

    public void setWtaskStatus(String wtaskStatus) {
        this.wtaskStatus = wtaskStatus;
    }

    public String getWtaskStatus() {
        return wtaskStatus;
    }

    public void setWtaskPCloseReason(String wtaskPCloseReason) {
        this.wtaskPCloseReason = wtaskPCloseReason;
    }

    public String getWtaskPCloseReason() {
        return wtaskPCloseReason;
    }

    public void setWtaskPDesc(String wtaskPDesc) {
        this.wtaskPDesc = wtaskPDesc;
    }

    public String getWtaskPDesc() {
        return wtaskPDesc;
    }

    public String getWorkOrderName() {
        return workOrderName;
    }

    public void setWorkOrderName(String workOrderName) {
        this.workOrderName = workOrderName;
    }

    public String getWorkCellName() {
        return workCellName;
    }

    public void setWorkCellName(String workCellName) {
        this.workCellName = workCellName;
    }

    public String getProcedureName() {
        return procedureName;
    }

    public void setProcedureName(String procedureName) {
        this.procedureName = procedureName;
    }

    public String getProuteName() {
        return prouteName;
    }

    public void setProuteName(String prouteName) {
        this.prouteName = prouteName;
    }

    public BigDecimal getWtaskRNum() {
        return wtaskRNum;
    }

    public void setWtaskRNum(BigDecimal wtaskRNum) {
        this.wtaskRNum = wtaskRNum;
    }

    public Date getWtaskRStart() {
        return wtaskRStart;
    }

    public void setWtaskRStart(Date wtaskRStart) {
        this.wtaskRStart = wtaskRStart;
    }

    public Date getWtaskREnd() {
        return wtaskREnd;
    }

    public void setWtaskREnd(Date wtaskREnd) {
        this.wtaskREnd = wtaskREnd;
    }


    @Override
    public String toString() {
        return "ProWorkTask{" +
                "wtaskCode='" + wtaskCode + '\'' +
                ", wtaskSort=" + wtaskSort +
                ", wtaskQcPeo=" + wtaskQcPeo +
                ", wtaskQcPeoName='" + wtaskQcPeoName + '\'' +
                ", wtaskWoCode='" + wtaskWoCode + '\'' +
                ", workOrderName='" + workOrderName + '\'' +
                ", wtaskName='" + wtaskName + '\'' +
                ", wtaskManager=" + wtaskManager +
                ", wtaskManagerName='" + wtaskManagerName + '\'' +
                ", wtaskGroup='" + wtaskGroup + '\'' +
                ", wtaskGroupName='" + wtaskGroupName + '\'' +
                ", wtaskCell='" + wtaskCell + '\'' +
                ", workCellName='" + workCellName + '\'' +
                ", wtaskNum=" + wtaskNum +
                ", wtaskRNum=" + wtaskRNum +
                ", wtaskStart=" + wtaskStart +
                ", wtaskEnd=" + wtaskEnd +
                ", wtaskRStart=" + wtaskRStart +
                ", wtaskREnd=" + wtaskREnd +
                ", wtaskBom='" + wtaskBom + '\'' +
                ", wtaskBomVersion='" + wtaskBomVersion + '\'' +
                ", wtaskProcedureCode='" + wtaskProcedureCode + '\'' +
                ", procedureName='" + procedureName + '\'' +
                ", wtaskRouteCode='" + wtaskRouteCode + '\'' +
                ", prouteName='" + prouteName + '\'' +
                ", wtaskStatus='" + wtaskStatus + '\'' +
                ", wtaskPCloseReason='" + wtaskPCloseReason + '\'' +
                ", wtaskPDesc='" + wtaskPDesc + '\'' +
                ", wtaskCalcType='" + wtaskCalcType + '\'' +
                ", wtaskCalcSingle=" + wtaskCalcSingle +
                "} " + super.toString();
    }
}
